﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using ED_Nivelacion.Negocios;

namespace ED_Nivelacion.PresentacionWeb
{
    public partial class Usuario : System.Web.UI.Page
    {

        Persona _obj = new Persona();
        Persona_C _objC = new Persona_C();
       
        

        protected void Page_Load(object sender, EventArgs e)
        {
            if (Session["tipoUsuario"] != null)
            {
                if (Session["tipoUsuario"].ToString() != "Administrador")
                {
                    if (Session["tipoUsuario"].ToString() == "Docente")
                    {
                        Response.Redirect("frm_InicioDocente.aspx");
                    }
                    else if (Session["tipoUsuario"].ToString() == "Coordinador")
                    {
                        Response.Redirect("frm_InicioCoordinador.aspx");
                    }
                    else if (Session["tipoUsuario"].ToString() == "Estudiante")
                    {
                        Response.Redirect("frm_InicioEstudiante.aspx");
                    }
                    else if (Session["tipoUsuario"].ToString() == "Tutor")
                    {
                        Response.Redirect("frm_InicioTutor.aspx");
                    }
                }
            }
            else
            {
                Response.Redirect("frm_Login.aspx");
            }


        }

        protected void Btn_Guardar_Usuario_Click(object sender, EventArgs e)
        {
            if (txt_CCUsuario.Text == "" || txt_NombresU.Text == "" || txt_ApellidosU.Text == "")
            {
                
                ClientScript.RegisterStartupScript(GetType(), "jsMensaje", "javascript:errorMessage('TODOS LOS CAMPOS SON OBLIGATORIOS');", true);
                Timer1.Enabled = true;
                Limpiar();
                
            }else 
            {
                AgregarUsuario();
                Limpiar();
            }
            
        }

        void AgregarUsuario()
        {

            string CCUsuario = txt_CCUsuario.Text;
            string NombreU = txt_NombresU.Text;
            string ApellidoU = txt_ApellidosU.Text;

            _obj.idUsuario = 1;
            _obj.Apellido = ApellidoU;
            _obj.Nombre = NombreU;
            _obj.Cedula = CCUsuario;
            Random r = new Random();
            int aleatorio = r.Next(1000, 9999);
            _obj.Clave = aleatorio.ToString();
            var msm = _objC.AgregarPersona(_obj);

            if (msm == "OK")
            {
                ClientScript.RegisterStartupScript(GetType(), "jsMensaje", "javascript:sucessMessage('Usuario agregado Correctamente');", true);
                Timer1.Enabled = true;
            }
            else
            {
                ClientScript.RegisterStartupScript(GetType(), "jsMensaje", "javascript:errorMessage('" + msm + "');", true);
                Timer1.Enabled = true;
            }

        
        }


        void Limpiar()
        {
            txt_CCUsuario.Text = "";
            txt_NombresU.Text = "";
            txt_ApellidosU.Text = "";
        }

        protected void Delete_Click(object sender, EventArgs e)
        {
            Eliminar_Usuario();
        }

        void Eliminar_Usuario()
        {

            var id = idEliminar.Text;
            _objC.EliminarPersona(int.Parse(id.ToString()));

        }

        void Modificar_Usuario()
        {
            string CCUsuario = txt_CCUsuario.Text;
            string NombreU = txt_NombresU.Text;
            string ApellidoU = txt_ApellidosU.Text;
            string idPersona = txtIdPersona.Text;

            _obj.idPersona = int.Parse(idPersona);
            _obj.Nombre = NombreU;
            _obj.Apellido = ApellidoU;
            _obj.Cedula = CCUsuario;
            _obj.idUsuario = 1;
            var clave = _objC.ObtenerPersona().Where(c => c.idPersona == int.Parse(idPersona)).FirstOrDefault().Clave;
            _obj.Clave = clave;

            var msm = _objC.EditarPersona(_obj);

            if (msm == "OK")
            {
                ClientScript.RegisterStartupScript(GetType(), "jsMensaje", "javascript:sucessMessage('Usuario Modificado Correctamente');", true);
                Timer1.Enabled = true;
            }
            else
            {
                ClientScript.RegisterStartupScript(GetType(), "jsMensaje", "javascript:errorMessage('" + msm + "');", true);
                Timer1.Enabled = true;
            }

        }

        protected void btn_Editar_Click(object sender, EventArgs e)
        {
            Modificar_Usuario();
        }


    }
}